{
 "cells": [
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "# Understanding Trust Region Policy Optimization (TRPO): A Complete Guide\n",
    "\n",
    "## Table of Contents\n",
    "\n",
    "- [Introduction](#introduction)\n",
    "- [What is TRPO?](#what-is-trpo)\n",
    "  - [Why Trust Regions for Policy Optimization?](#why-trust-regions)\n",
    "- [Where and How TRPO is Used](#where-and-how-trpo-is-used)\n",
    "- [Mathematical Foundation of TRPO](#mathematical-foundation-of-trpo)\n",
    "  - [Policy Gradient Recap](#policy-gradient-recap)\n",
    "  - [The Problem with Vanilla Policy Gradients](#the-problem-with-vanilla-policy-gradients)\n",
    "  - [The Surrogate Objective Function](#the-surrogate-objective-function)\n",
    "  - [The Trust Region Constraint (KL Divergence)](#the-trust-region-constraint-kl-divergence)\n",
    "  - [Approximation and the Optimization Problem](#approximation-and-the-optimization-problem)\n",
    "  - [Fisher Information Matrix (FIM)](#fisher-information-matrix-fim)\n",
    "  - [Solving the Constrained Problem: Conjugate Gradient](#solving-the-constrained-problem-conjugate-gradient)\n",
    "  - [Ensuring the Constraint: Backtracking Line Search](#ensuring-the-constraint-backtracking-line-search)\n",
    "  - [Advantage Estimation: GAE](#advantage-estimation-gae)\n",
    "- [Step-by-Step Explanation of TRPO](#step-by-step-explanation-of-trpo)\n",
    "- [Key Components of TRPO](#key-components-of-trpo)\n",
    "  - [Policy Network (Actor)](#policy-network-actor)\n",
    "  - [Value Network (Critic)](#value-network-critic)\n",
    "  - [Rollout Collection (On-Policy)](#rollout-collection-on-policy)\n",
    "  - [Advantage Estimation (GAE)](#advantage-estimation-gae)\n",
    "  - [Policy Gradient Calculation](#policy-gradient-calculation)\n",
    "  - [Fisher-Vector Product (FVP)](#fisher-vector-product-fvp)\n",
    "  - [Conjugate Gradient (CG) Algorithm](#conjugate-gradient-cg-algorithm)\n",
    "  - [Backtracking Line Search](#backtracking-line-search)\n",
    "  - [Value Function Update](#value-function-update)\n",
    "  - [Hyperparameters](#hyperparameters)\n",
    "- [Practical Example: Custom Grid World](#practical-example-custom-grid-world)\n",
    "- [Setting up the Environment](#setting-up-the-environment)\n",
    "- [Creating the Custom Environment](#creating-the-custom-environment)\n",
    "- [Implementing the TRPO Algorithm](#implementing-the-trpo-algorithm)\n",
    "  - [Defining the Policy Network (Actor)](#defining-the-policy-network-actor)\n",
    "  - [Defining the Value Network (Critic)](#defining-the-value-network-critic)\n",
    "  - [Calculating KL Divergence](#calculating-kl-divergence)\n",
    "  - [Calculating Generalized Advantage Estimation (GAE)](#calculating-generalized-advantage-estimation-gae)\n",
    "  - [Computing the Fisher-Vector Product (FVP)](#computing-the-fisher-vector-product-fvp)\n",
    "  - [Implementing the Conjugate Gradient Algorithm](#implementing-the-conjugate-gradient-algorithm)\n",
    "  - [Implementing the Backtracking Line Search](#implementing-the-backtracking-line-search)\n",
    "  - [The TRPO Update Step](#the-trpo-update-step)\n",
    "  - [Value Function Optimization Step](#value-function-optimization-step)\n",
    "- [Running the TRPO Algorithm](#running-the-trpo-algorithm)\n",
    "  - [Hyperparameter Setup](#hyperparameter-setup)\n",
    "  - [Initialization](#initialization)\n",
    "  - [Training Loop](#training-loop)\n",
    "- [Visualizing the Learning Process](#visualizing-the-learning-process)\n",
    "- [Analyzing the Learned Policy (Optional Visualization)](#analyzing-the-learned-policy-optional-visualization)\n",
    "- [Common Challenges and Solutions in TRPO](#common-challenges-and-solutions-in-trpo)\n",
    "- [Conclusion](#conclusion)\n",
    "\n",
    "## Introduction\n",
    "\n",
    "Trust Region Policy Optimization (TRPO) is an advanced policy gradient method in reinforcement learning. It addresses a key instability issue found in simpler methods like REINFORCE: large, poorly chosen policy updates can drastically reduce performance, sometimes leading to catastrophic collapse. TRPO aims to guarantee (or make highly likely) monotonic improvement in policy performance by constraining the size of policy updates within a 'trust region' defined by the Kullback-Leibler (KL) divergence.\n",
    "\n",
    "## What is TRPO?\n",
    "\n",
    "TRPO is an iterative algorithm that seeks to improve a stochastic policy $\\pi(a|s; \\theta)$ parameterized by $\\theta$. At each iteration, it solves a constrained optimization problem:\n",
    "\n",
    "1.  **Maximize** an objective function (the *surrogate advantage*) that approximates the expected improvement in performance.\n",
    "2.  **Subject to** a constraint that the change in the policy (measured by the average KL divergence between the old policy $\\pi_{\\theta_{old}}$ and the new policy $\\pi_{\\theta}$) is less than a small constant $\\delta$.\n",
    "\n",
    "$$ \\max_{\\theta} \\quad \\mathbb{E}_{s \\sim \\rho_{\\theta_{old}}, a \\sim \\pi_{\theta_{old}}} \\left[ \\frac{\\pi_\\theta(a|s)}{\\pi_{\\theta_{old}}(a|s)} A^{\\pi_{\\theta_{old}}}(s,a) \\right] $$\n",
    "$$\n",
    "\\text{subject to} \\quad \\mathbb{E}_{s \\sim \\rho_{\\theta_{old}}} [D_{KL}(\\pi_{\\theta_{old}}(\\cdot|s) || \\pi_{\\theta}(\\cdot|s))] \\le \\delta $$ \n",
    "\n",
    "Here, $A^{\\pi_{\theta_{old}}}(s,a)$ is the advantage function estimated under the old policy, and $\\rho_{\theta_{old}}$ is the state distribution induced by the old policy.\n",
    "\n",
    "Instead of directly solving this complex constrained problem, TRPO makes approximations and uses the **Conjugate Gradient (CG)** algorithm combined with a **line search** to find a policy update that satisfies the constraint while approximately maximizing the objective.\n",
    "\n",
    "### Why Trust Regions for Policy Optimization?\n",
    "\n",
    "Vanilla policy gradient methods (like REINFORCE) follow the gradient $\\nabla_\\theta J(\\theta)$ with a fixed learning rate. Key issues include:\n",
    "\n",
    "1.  **Sensitivity to Step Size:** A large step can move the policy into a bad region from which it might not recover. A small step leads to slow learning.\n",
    "2.  **No Performance Guarantee:** A gradient ascent step doesn't guarantee improved performance, especially with function approximation and noisy gradient estimates.\n",
    "\n",
    "TRPO addresses this by:\n",
    "- **Using a Surrogate Objective:** This objective function uses importance sampling ($\\frac{\\pi_\\theta(a|s)}{\\pi_{\\theta_{old}}(a|s)}$) to estimate the performance of the *new* policy using data from the *old* policy.\n",
    "- **Imposing a KL Constraint:** This limits how much the policy distribution can change in a single step. By keeping the new policy close to the old one (within the trust region $\\delta$), the surrogate objective remains a good approximation of the true performance improvement, making monotonic improvement more likely.\n",
    "\n",
    "## Where and How TRPO is Used\n",
    "\n",
    "TRPO was a significant step forward in policy optimization, demonstrating strong performance on complex continuous control tasks, particularly in simulated robotics (MuJoCo benchmarks).\n",
    "\n",
    "1.  **Continuous Control:** Its stability made it suitable for challenging continuous action space problems.\n",
    "2.  **Robotics Simulation:** Widely used for learning locomotion and manipulation skills.\n",
    "3.  **Foundation for PPO:** While effective, TRPO's implementation complexity (especially CG and FVP) led to the development of Proximal Policy Optimization (PPO), which achieves similar stability with a simpler clipped objective or adaptive KL penalty, making PPO more popular today.\n",
    "\n",
    "TRPO is suitable when:\n",
    "- Stability and reliable policy improvement are critical.\n",
    "- The computational overhead of CG and FVP is acceptable.\n",
    "- On-policy data generation is feasible.\n",
    "- The action space can be discrete or continuous.\n",
    "\n",
    "## Mathematical Foundation of TRPO\n",
    "\n",
    "### Policy Gradient Recap\n",
    "The standard policy gradient is $g = \\nabla_\\theta J(\\theta) = \\mathbb{E}_{\\tau \\sim \\pi_\\theta} [\\sum_t \\nabla_\\theta \\log \\pi_\\theta(a_t|s_t) A^{\\pi_\\theta}(s_t, a_t)]$.\n",
    "\n",
    "### The Problem with Vanilla Policy Gradients\n",
    "A policy update $\\theta_{new} = \\theta_{old} + \\alpha g$ can lead to poor performance if $\\alpha$ is too large, or slow convergence if $\\alpha$ is too small. The step size $\\alpha$ that works well for one state or policy might be terrible for another.\n",
    "\n",
    "### The Surrogate Objective Function\n",
    "TRPO aims to maximize the *expected advantage* of the new policy $\\pi_\theta$ relative to the old one $\\pi_{\theta_{old}}$, using samples from $\\pi_{\theta_{old}}$. Let $L_{\theta_{old}}(\\theta)$ be this surrogate objective:\n",
    "$$ L_{\theta_{old}}(\\theta) = \\mathbb{E}_{s \\sim \n",
    "ho_{\theta_{old}}, a \\sim \\pi_{\theta_{old}}} \\left[ \\frac{\\pi_\\theta(a|s)}{\\pi_{\theta_{old}}(a|s)} A^{\\pi_{\theta_{old}}}(s,a) \\right] $$\n",
    "Note that $\\nabla_\theta L_{\theta_{old}}(\\theta)|_{\theta=\\theta_{old}} = \n",
    "abla_\theta J(\\theta)|_{\theta=\\theta_{old}} = g$. The gradient matches the standard policy gradient at the current parameters.\n",
    "\n",
    "### The Trust Region Constraint (KL Divergence)\n",
    "To ensure $L_{\theta_{old}}(\\theta)$ approximates the true performance improvement well, the change in policy is constrained using the average KL divergence:\n",
    "$$ \\bar{D}_{KL}(\\theta_{old} || \\theta) = \\mathbb{E}_{s \\sim \\rho_{\theta_{old}}} [D_{KL}(\\pi_{\theta_{old}}(\\cdot|s) || \\pi_{\\theta}(\\cdot|s))] \\le \\delta $$\n",
    "where $D_{KL}(P || Q) = \\sum_x P(x) \\log \\frac{P(x)}{Q(x)}$ for discrete distributions.\n",
    "\n",
    "### Approximation and the Optimization Problem\n",
    "Directly solving the constrained maximization of $L_{\theta_{old}}(\\theta)$ is hard. TRPO approximates the objective and constraint using first and second-order Taylor expansions around $\\theta_{old}$:\n",
    "- $L_{\theta_{old}}(\\theta) \\approx L_{\theta_{old}}(\\theta_{old}) + g^T (\theta - \\theta_{old})$ (Ignoring $L_{\theta_{old}}(\\theta_{old})$ which is 0)\n",
    "- $\\bar{D}_{KL}(\\theta_{old} || \\theta) \\approx \\frac{1}{2} (\theta - \\theta_{old})^T F (\theta - \\theta_{old})$\n",
    "where $g = \\nabla_\theta L_{\theta_{old}}(\\theta)|_{\theta=\\theta_{old}}$ is the policy gradient and $F = \\nabla^2_\theta \\bar{D}_{KL}(\\theta_{old} || \\theta)|_{\theta=\\theta_{old}}$ is the Fisher Information Matrix (FIM) evaluated at $\\theta_{old}$.\n",
    "\n",
    "The optimization problem becomes:\n",
    "$$ \\max_{\\Delta\\theta} \\quad g^T \\Delta\\theta \\quad \\text{subject to} \\quad \\frac{1}{2} \\Delta\\theta^T F \\Delta\\theta \\le \\delta $$\n",
    "where $\\Delta\\theta = \\theta - \\theta_{old}$. The solution to this is $\\Delta\\theta \\propto F^{-1} g$. The exact step is $\\Delta\\theta = \\sqrt{\\frac{2\\delta}{g^T F^{-1} g}} F^{-1} g$.\n",
    "\n",
    "### Fisher Information Matrix (FIM)\n",
    "$F = \\mathbb{E}_{s \\sim \n",
    "ho_{\theta_{old}}, a \\sim \\pi_{\theta_{old}}} [\\nabla_\\theta \\log \\pi_{\\theta_{old}}(a|s) \\nabla_\\theta \\log \\pi_{\theta_{old}}(a|s)^T]$. It represents the curvature of the policy's log-likelihood and acts as a metric tensor on the parameter space, defining the 'natural gradient'.\n",
    "\n",
    "### Solving the Constrained Problem: Conjugate Gradient\n",
    "Calculating and inverting the potentially large FIM $F$ is infeasible. TRPO uses the Conjugate Gradient (CG) algorithm to efficiently compute the update direction $s \\approx F^{-1} g$ by iteratively solving the linear system $Fx = g$. CG only requires computing matrix-vector products of the form $Fv$, known as the Fisher-Vector Product (FVP).\n",
    "\n",
    "The FVP $Fv$ can be computed efficiently using automatic differentiation without explicitly forming $F$. One way is:\n",
    "1. Compute $D_{KL}(\\pi_{\\theta_{old}} || \\pi_{\\theta})$ (averaged over states).\n",
    "2. Compute the gradient $k = \\nabla_\theta D_{KL}|_{\\theta=\\theta_{old}}$.\n",
    "3. Compute the directional derivative $(k^T v)$.\n",
    "4. Compute the gradient of this scalar w.r.t $\\theta$: $\n",
    "abla_\theta (k^T v)|_{\theta=\\theta_{old}}$. This gives $Fv$.\n",
    "A damping term $\\beta v$ is often added for numerical stability: $(F+\\beta I)v$.\n",
    "\n",
    "### Ensuring the Constraint: Backtracking Line Search\n",
    "Since the optimization problem used approximations, the proposed step $\\Delta \\theta = \\alpha s$ (where $s=F^{-1}g$ and $\\alpha = \\sqrt{2\\delta / (s^T F s)}$ is the initial step size) might violate the original KL constraint or decrease performance. A backtracking line search is performed:\n",
    "1. Start with the full step $\\theta_{new} = \\theta_{old} + \\Delta\\theta$.\n",
    "2. Check if $\\bar{D}_{KL}(\\theta_{old} || \\theta_{new}) \\le \\delta$ AND $L_{\theta_{old}}(\\theta_{new}) \\ge 0$ (or some expected improvement threshold).\n",
    "3. If not satisfied, reduce the step size ($\\Delta\\theta \\leftarrow \\beta \\Delta\\theta$ for some $\\beta < 1$) and repeat step 2.\n",
    "\n",
    "### Advantage Estimation: GAE\n",
    "TRPO requires good estimates of the advantage function $A^{\\pi_{\theta_{old}}}(s,a)$. While simple Monte Carlo returns ($G_t - V(s_t)$) can be used, Generalized Advantage Estimation (GAE) is typically preferred for variance reduction:\n",
    "$$ A^{GAE}_t = \\sum_{l=0}^{\\infty} (\\gamma \\lambda)^l \\delta_{t+l} $$\n",
    "where $\\delta_t = r_t + \\gamma V(s_{t+1}) - V(s_t)$ is the TD error, $\\gamma$ is the discount factor, and $\\lambda \\in [0, 1]$ is a smoothing parameter ($\\lambda=0$ gives TD(0) advantage, $\\lambda=1$ gives Monte Carlo advantage). GAE requires learning a state-value function $V(s)$ (the Critic).\n",
    "\n",
    "## Step-by-Step Explanation of TRPO\n",
    "\n",
    "1.  **Initialize**: Policy network $\\pi(a|s; \\theta)$ (Actor), Value network $V(s; \\phi)$ (Critic), hyperparameters ($\\gamma, \\lambda, \\delta$, CG params, line search params, value learning rate).\n",
    "2.  **For each iteration**:\n",
    "    a.  **Collect Trajectories**: Using the current policy $\\pi_{\\theta_{old}}$, collect a batch of trajectories (states, actions, rewards, next\\_states, dones, old\\_log\\_probs).\n",
    "    b.  **Estimate Values**: Compute $V(s_t; \\phi_{old})$ for all states in the batch using the current critic.\n",
    "    c.  **Estimate Advantages**: Compute TD errors $\\delta_t$ and GAE advantages $A^{GAE}_t$ using the collected rewards and value estimates.\n",
    "    d.  **Compute Policy Gradient ($g$)**: Calculate $g = \\frac{1}{N} \\sum_{\\text{batch}} \\nabla_\\theta \\log \\pi_\\theta(a_t|s_t)|_{\\theta_{old}} A^{GAE}_t$.\n",
    "    e.  **Compute Update Direction ($s$)**: Use Conjugate Gradient to solve $(F+\\beta I)s = g$, where $F$ involves computing FVPs. Get $s \\approx F^{-1}g$.\n",
    "    f.  **Compute Initial Step Size**: Calculate $\\alpha = \\sqrt{\\frac{2\\delta}{s^T F s}}$ (where $s^T F s$ is computed using another FVP).\n",
    "    g.  **Perform Line Search**: Find the largest step $\\beta \\in [0, 1]$ such that $\\theta_{new} = \\theta_{old} + \\beta \\alpha s$ satisfies both:\n",
    "        - $\\bar{D}_{KL}(\\theta_{old} || \\theta_{new}) \\le \\delta$\n",
    "        - $L_{\theta_{old}}(\\theta_{new}) \\ge 0$ (or sufficient improvement)\n",
    "    h.  **Update Policy**: Set $\\theta \\leftarrow \\theta_{new}$.\n",
    "    i.  **Update Value Function**: Using the collected batch data, update the critic parameters $\\phi$ via gradient descent on the MSE loss between $V(s_t; \\phi)$ and the empirical returns (e.g., $A^{GAE}_t + V(s_t; \\phi_{old})$). Typically perform multiple updates.\n",
    "3.  **Repeat**: Until convergence.\n",
    "\n",
    "## Key Components of TRPO\n",
    "\n",
    "### Policy Network (Actor)\n",
    "- Parameterizes the stochastic policy $\\pi(a|s; \\theta)$.\n",
    "- Outputs action probabilities (e.g., via Softmax for discrete actions).\n",
    "\n",
    "### Value Network (Critic)\n",
    "- Parameterizes the state-value function $V(s; \\phi)$.\n",
    "- Used to compute TD errors and GAE advantages.\n",
    "- Trained via regression (e.g., MSE loss).\n",
    "\n",
    "### Rollout Collection (On-Policy)\n",
    "- Collects batches of experience (trajectories) using the *current* policy $\\pi_{\\theta_{old}}$.\n",
    "- Stores states, actions, rewards, dones, and the log probabilities $\\log \\pi_{\\theta_{old}}(a|s)$ under the policy used for rollout.\n",
    "\n",
    "### Advantage Estimation (GAE)\n",
    "- Computes advantage estimates $A_t$ using collected data and the value network.\n",
    "- GAE provides a variance-reduced estimate compared to pure Monte Carlo.\n",
    "\n",
    "### Policy Gradient Calculation\n",
    "- Computes the gradient $g$ of the surrogate objective at $\\theta_{old}$, weighted by the estimated advantages.\n",
    "\n",
    "### Fisher-Vector Product (FVP)\n",
    "- Function to compute $Fv$ without forming the full FIM $F$.\n",
    "- Essential for the Conjugate Gradient step. Uses autograd.\n",
    "\n",
    "### Conjugate Gradient (CG) Algorithm\n",
    "- Iterative method to approximately solve $Fs = g$ for the update direction $s$.\n",
    "- Avoids direct FIM inversion.\n",
    "\n",
    "### Backtracking Line Search\n",
    "- Ensures the final policy step $\\Delta \\theta$ satisfies the KL constraint and improves the (approximate) objective.\n",
    "- Starts with a step size derived from the constraint and shrinks it until conditions are met.\n",
    "\n",
    "### Value Function Update\n",
    "- Updates the critic network $\\phi$ to better predict state values, typically using Adam or similar optimizer on MSE loss.\n",
    "\n",
    "### Hyperparameters\n",
    "- TRPO introduces several new hyperparameters: KL constraint $\\delta$, GAE $\\lambda$, CG damping factor, CG iterations, line search decay factor, value function learning rate, value function update steps per policy update.\n",
    "- Tuning these can be complex.\n",
    "\n",
    "## Practical Example: Custom Grid World\n",
    "\n",
    "We use the same custom Grid World for consistency. TRPO is arguably overkill for this simple environment, but it serves to illustrate the implementation mechanics following the requested style.\n",
    "\n",
    "**Environment Description:** (Same as before)\n",
    "- Grid Size: 10x10.\n",
    "- State: `[row/9, col/9]`\n",
    "- Actions: 4 discrete (Up, Down, Left, Right).\n",
    "- Start: (0, 0), Goal: (9, 9).\n",
    "- Rewards: +10 (goal), -1 (wall), -0.1 (step).\n",
    "- Termination: Goal or max steps.\n"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "# Setting up the Environment\n",
    "\n",
    "Import libraries. Note that TRPO's implementation, especially FVP and CG, is non-trivial using only basic libraries + PyTorch, but we will stick to that."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 1,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Using device: cpu\n"
     ]
    }
   ],
   "source": [
    "# Import necessary libraries\n",
    "import numpy as np\n",
    "import matplotlib.pyplot as plt\n",
    "import random\n",
    "import math\n",
    "from collections import namedtuple, deque \n",
    "from itertools import count\n",
    "from typing import List, Tuple, Dict, Optional, Callable\n",
    "\n",
    "# Import PyTorch\n",
    "import torch\n",
    "import torch.nn as nn\n",
    "import torch.optim as optim\n",
    "import torch.nn.functional as F\n",
    "from torch.distributions import Categorical\n",
    "from torch.nn.utils.convert_parameters import parameters_to_vector, vector_to_parameters\n",
    "\n",
    "# Set up device\n",
    "device = torch.device(\"cuda\" if torch.cuda.is_available() else \"cpu\")\n",
    "print(f\"Using device: {device}\")\n",
    "\n",
    "# Set random seeds for reproducibility\n",
    "seed = 42\n",
    "random.seed(seed)\n",
    "np.random.seed(seed)\n",
    "torch.manual_seed(seed)\n",
    "if torch.cuda.is_available():\n",
    "    torch.cuda.manual_seed_all(seed)\n",
    "\n",
    "%matplotlib inline"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "# Creating the Custom Environment\n",
    "\n",
    "Reusing the exact same `GridEnvironment` class."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {},
   "outputs": [],
   "source": [
    "# Custom Grid World Environment (Identical to the one in DQN/REINFORCE notebooks)\n",
    "class GridEnvironment:\n",
    "    \"\"\"\n",
    "    A simple 10x10 Grid World environment.\n",
    "\n",
    "    Attributes:\n",
    "    - rows (int): Number of rows in the grid.\n",
    "    - cols (int): Number of columns in the grid.\n",
    "    - start_state (Tuple[int, int]): Starting state of the agent (row, col).\n",
    "    - goal_state (Tuple[int, int]): Goal state of the agent (row, col).\n",
    "    - state (Tuple[int, int]): Current state of the agent (row, col).\n",
    "    - state_dim (int): Dimensionality of the state representation.\n",
    "    - action_dim (int): Number of possible actions.\n",
    "    - action_map (Dict[int, Tuple[int, int]]): Mapping of actions to their effects on the grid.\n",
    "    \"\"\"\n",
    "\n",
    "    def __init__(self, rows: int = 10, cols: int = 10) -> None:\n",
    "        \"\"\"\n",
    "        Initializes the GridEnvironment.\n",
    "\n",
    "        Parameters:\n",
    "        - rows (int): Number of rows in the grid. Default is 10.\n",
    "        - cols (int): Number of columns in the grid. Default is 10.\n",
    "        \"\"\"\n",
    "        self.rows: int = rows\n",
    "        self.cols: int = cols\n",
    "        self.start_state: Tuple[int, int] = (0, 0)\n",
    "        self.goal_state: Tuple[int, int] = (rows - 1, cols - 1)\n",
    "        self.state: Tuple[int, int] = self.start_state\n",
    "        self.state_dim: int = 2\n",
    "        self.action_dim: int = 4\n",
    "        self.action_map: Dict[int, Tuple[int, int]] = {\n",
    "            0: (-1, 0),  # Up\n",
    "            1: (1, 0),   # Down\n",
    "            2: (0, -1),  # Left\n",
    "            3: (0, 1)    # Right\n",
    "        }\n",
    "\n",
    "    def reset(self) -> torch.Tensor:\n",
    "        \"\"\"\n",
    "        Resets the environment to the starting state.\n",
    "\n",
    "        Returns:\n",
    "        - torch.Tensor: The normalized state tensor of the starting state.\n",
    "        \"\"\"\n",
    "        self.state = self.start_state\n",
    "        return self._get_state_tensor(self.state)\n",
    "\n",
    "    def _get_state_tensor(self, state_tuple: Tuple[int, int]) -> torch.Tensor:\n",
    "        \"\"\"\n",
    "        Converts a state (row, col) into a normalized state tensor.\n",
    "\n",
    "        Parameters:\n",
    "        - state_tuple (Tuple[int, int]): The state as a tuple (row, col).\n",
    "\n",
    "        Returns:\n",
    "        - torch.Tensor: The normalized state tensor [row/rows-1, col/cols-1].\n",
    "        \"\"\"\n",
    "        norm_row: float = state_tuple[0] / (self.rows - 1) if self.rows > 1 else 0.0\n",
    "        norm_col: float = state_tuple[1] / (self.cols - 1) if self.cols > 1 else 0.0\n",
    "        normalized_state: List[float] = [norm_row, norm_col]\n",
    "        return torch.tensor(normalized_state, dtype=torch.float32, device=device)\n",
    "\n",
    "    def step(self, action: int) -> Tuple[torch.Tensor, float, bool]:\n",
    "        \"\"\"\n",
    "        Takes a step in the environment based on the given action.\n",
    "\n",
    "        Parameters:\n",
    "        - action (int): The action to take (0: up, 1: down, 2: left, 3: right).\n",
    "\n",
    "        Returns:\n",
    "        - Tuple[torch.Tensor, float, bool]:\n",
    "            - torch.Tensor: The normalized state tensor after the action.\n",
    "            - float: The reward for taking the action.\n",
    "            - bool: Whether the episode has ended (goal reached).\n",
    "        \"\"\"\n",
    "        if self.state == self.goal_state:\n",
    "            # If already at the goal, return the current state with no reward\n",
    "            return self._get_state_tensor(self.state), 0.0, True\n",
    "\n",
    "        # Determine the next state based on the action\n",
    "        dr, dc = self.action_map[action]\n",
    "        current_row, current_col = self.state\n",
    "        next_row, next_col = current_row + dr, current_col + dc\n",
    "\n",
    "        # Initialize reward and check for wall collisions\n",
    "        reward: float = -0.1  # Default step penalty\n",
    "        hit_wall: bool = False\n",
    "        if not (0 <= next_row < self.rows and 0 <= next_col < self.cols):\n",
    "            # If the next state is out of bounds, stay in the current state\n",
    "            next_row, next_col = current_row, current_col\n",
    "            reward = -1.0  # Penalty for hitting a wall\n",
    "            hit_wall = True\n",
    "\n",
    "        # Update the state\n",
    "        self.state = (next_row, next_col)\n",
    "        next_state_tensor: torch.Tensor = self._get_state_tensor(self.state)\n",
    "\n",
    "        # Check if the goal state is reached\n",
    "        done: bool = (self.state == self.goal_state)\n",
    "        if done:\n",
    "            reward = 10.0  # Reward for reaching the goal\n",
    "\n",
    "        return next_state_tensor, reward, done\n",
    "\n",
    "    def get_action_space_size(self) -> int:\n",
    "        \"\"\"\n",
    "        Returns the number of possible actions.\n",
    "\n",
    "        Returns:\n",
    "        - int: The number of actions (4 for up, down, left, right).\n",
    "        \"\"\"\n",
    "        return self.action_dim\n",
    "\n",
    "    def get_state_dimension(self) -> int:\n",
    "        \"\"\"\n",
    "        Returns the dimensionality of the state representation.\n",
    "\n",
    "        Returns:\n",
    "        - int: The dimensionality of the state (2 for [row, col]).\n",
    "        \"\"\"\n",
    "        return self.state_dim"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "Instantiate and test the environment."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 3,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Custom Grid Environment:\n",
      "Size: 10x10\n",
      "State Dim: 2\n",
      "Action Dim: 4\n",
      "Start State: (0, 0)\n",
      "Goal State: (9, 9)\n",
      "Example state tensor for (0,0): tensor([0., 0.])\n"
     ]
    }
   ],
   "source": [
    "custom_env = GridEnvironment(rows=10, cols=10)\n",
    "n_actions_custom = custom_env.get_action_space_size()\n",
    "n_observations_custom = custom_env.get_state_dimension()\n",
    "\n",
    "print(f\"Custom Grid Environment:\")\n",
    "print(f\"Size: {custom_env.rows}x{custom_env.cols}\")\n",
    "print(f\"State Dim: {n_observations_custom}\")\n",
    "print(f\"Action Dim: {n_actions_custom}\")\n",
    "print(f\"Start State: {custom_env.start_state}\")\n",
    "print(f\"Goal State: {custom_env.goal_state}\")\n",
    "start_state_tensor = custom_env.reset()\n",
    "print(f\"Example state tensor for (0,0): {start_state_tensor}\")"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "# Implementing the TRPO Algorithm\n",
    "\n",
    "Define the Actor (Policy Network) and Critic (Value Network), and then the core TRPO functions.\n",
    "\n",
    "### Defining the Policy Network (Actor)\n",
    "\n",
    "Outputs action probabilities (similar to REINFORCE)."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 4,
   "metadata": {},
   "outputs": [],
   "source": [
    "# Define the Policy Network (Actor)\n",
    "class PolicyNetwork(nn.Module):\n",
    "    \"\"\" MLP Actor network for TRPO \"\"\"\n",
    "    def __init__(self, n_observations: int, n_actions: int):\n",
    "        super(PolicyNetwork, self).__init__()\n",
    "        self.layer1 = nn.Linear(n_observations, 128)\n",
    "        self.layer2 = nn.Linear(128, 128)\n",
    "        self.layer3 = nn.Linear(128, n_actions)\n",
    "\n",
    "    def forward(self, x: torch.Tensor) -> Categorical:\n",
    "        \"\"\"\n",
    "        Forward pass, returns a Categorical distribution.\n",
    "        Parameters:\n",
    "        - x (torch.Tensor): Input state tensor.\n",
    "        Returns:\n",
    "        - Categorical: A distribution object over actions.\n",
    "        \"\"\"\n",
    "        if not isinstance(x, torch.Tensor):\n",
    "             x = torch.tensor(x, dtype=torch.float32, device=device)\n",
    "        elif x.dtype != torch.float32:\n",
    "             x = x.to(dtype=torch.float32)\n",
    "        if x.dim() == 1: # Add batch dimension if necessary\n",
    "            x = x.unsqueeze(0)\n",
    "        x = F.relu(self.layer1(x))\n",
    "        x = F.relu(self.layer2(x))\n",
    "        action_logits = self.layer3(x)\n",
    "        # Return a distribution object, allowing easy sampling and log_prob calculation\n",
    "        return Categorical(logits=action_logits) "
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### Defining the Value Network (Critic)\n",
    "\n",
    "Outputs a single value representing the estimated state value V(s)."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 5,
   "metadata": {},
   "outputs": [],
   "source": [
    "# Define the Value Network (Critic)\n",
    "class ValueNetwork(nn.Module):\n",
    "    \"\"\" MLP Critic network for TRPO \"\"\"\n",
    "    def __init__(self, n_observations: int):\n",
    "        super(ValueNetwork, self).__init__()\n",
    "        self.layer1 = nn.Linear(n_observations, 128)\n",
    "        self.layer2 = nn.Linear(128, 128)\n",
    "        self.layer3 = nn.Linear(128, 1) # Output a single value\n",
    "\n",
    "    def forward(self, x: torch.Tensor) -> torch.Tensor:\n",
    "        \"\"\"\n",
    "        Forward pass, returns the estimated state value.\n",
    "        Parameters:\n",
    "        - x (torch.Tensor): Input state tensor.\n",
    "        Returns:\n",
    "        - torch.Tensor: The estimated state value V(s).\n",
    "        \"\"\"\n",
    "        if not isinstance(x, torch.Tensor):\n",
    "             x = torch.tensor(x, dtype=torch.float32, device=device)\n",
    "        elif x.dtype != torch.float32:\n",
    "             x = x.to(dtype=torch.float32)\n",
    "        if x.dim() == 1: # Add batch dimension if necessary\n",
    "            x = x.unsqueeze(0)\n",
    "            \n",
    "        x = F.relu(self.layer1(x))\n",
    "        x = F.relu(self.layer2(x))\n",
    "        state_value = self.layer3(x)\n",
    "        return state_value"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### Calculating KL Divergence\n",
    "\n",
    "Function to compute the average KL divergence between two policy distributions (represented by Categorical distributions from the policy network) over a batch of states."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 6,
   "metadata": {},
   "outputs": [],
   "source": [
    "def calculate_kl_divergence(old_policy_dist: Categorical, \n",
    "                            new_policy_dist: Categorical) -> torch.Tensor:\n",
    "    \"\"\"\n",
    "    Calculates the average KL divergence between two Categorical distributions.\n",
    "    KL(old || new) = sum(old_probs * (log(old_probs) - log(new_probs)))\n",
    "\n",
    "    Parameters:\n",
    "    - old_policy_dist (Categorical): Distribution from the policy before the update.\n",
    "    - new_policy_dist (Categorical): Distribution from the policy after the proposed update.\n",
    "\n",
    "    Returns:\n",
    "    - torch.Tensor: A scalar tensor representing the mean KL divergence.\n",
    "    \"\"\"\n",
    "    old_log_probs = old_policy_dist.logits\n",
    "    new_log_probs = new_policy_dist.logits\n",
    "    old_probs = old_policy_dist.probs\n",
    "\n",
    "    # Calculate KL divergence for each state in the batch\n",
    "    kl = torch.sum(old_probs * (F.log_softmax(old_log_probs, dim=1) - F.log_softmax(new_log_probs, dim=1)), dim=1)\n",
    "    \n",
    "    # Return the mean KL divergence across the batch\n",
    "    return kl.mean()"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### Calculating Generalized Advantage Estimation (GAE)\n",
    "\n",
    "Computes GAE advantages using rewards, dones, and value estimates."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 7,
   "metadata": {},
   "outputs": [],
   "source": [
    "def compute_gae(rewards: torch.Tensor, \n",
    "                values: torch.Tensor, \n",
    "                next_values: torch.Tensor, \n",
    "                dones: torch.Tensor, \n",
    "                gamma: float, \n",
    "                lambda_gae: float, \n",
    "                standardize: bool = True) -> torch.Tensor:\n",
    "    \"\"\"\n",
    "    Computes Generalized Advantage Estimation (GAE).\n",
    "\n",
    "    Parameters:\n",
    "    - rewards (torch.Tensor): Tensor of rewards for each step.\n",
    "    - values (torch.Tensor): Tensor of value estimates V(s_t) for each step.\n",
    "    - next_values (torch.Tensor): Tensor of value estimates V(s_{t+1}) for each step.\n",
    "    - dones (torch.Tensor): Tensor of done flags for each step.\n",
    "    - gamma (float): Discount factor.\n",
    "    - lambda_gae (float): GAE lambda parameter.\n",
    "    - standardize (bool): Whether to standardize advantages.\n",
    "\n",
    "    Returns:\n",
    "    - torch.Tensor: Tensor of GAE advantages for each step.\n",
    "    \"\"\"\n",
    "    advantages = torch.zeros_like(rewards)\n",
    "    last_advantage = 0.0\n",
    "\n",
    "    for t in reversed(range(len(rewards))):\n",
    "        # Calculate TD error: delta_t = r_t + gamma * V(s_{t+1}) * (1 - done_t) - V(s_t)\n",
    "        mask = 1.0 - dones[t] # Mask is 0 if done, 1 otherwise\n",
    "        delta = rewards[t] + gamma * next_values[t] * mask - values[t]\n",
    "        \n",
    "        # Calculate Advantage: A_t = delta_t + gamma * lambda * A_{t+1} * (1 - done_t)\n",
    "        advantages[t] = delta + gamma * lambda_gae * last_advantage * mask\n",
    "        last_advantage = advantages[t]\n",
    "\n",
    "    # Standardize advantages (optional but recommended)\n",
    "    if standardize:\n",
    "        mean_adv = torch.mean(advantages)\n",
    "        std_adv = torch.std(advantages) + 1e-8 # Add epsilon for stability\n",
    "        advantages = (advantages - mean_adv) / std_adv\n",
    "        \n",
    "    return advantages"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### Computing the Fisher-Vector Product (FVP)\n",
    "\n",
    "This is a key function for TRPO's use of Conjugate Gradient. It computes the product $Fv$ where $F$ is the FIM and $v$ is an arbitrary vector, without forming $F$ explicitly."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 8,
   "metadata": {},
   "outputs": [],
   "source": [
    "def fisher_vector_product(actor: PolicyNetwork, \n",
    "                            states: torch.Tensor, \n",
    "                            vector: torch.Tensor, \n",
    "                            cg_damping: float) -> torch.Tensor:\n",
    "    \"\"\"\n",
    "    Computes the Fisher-Vector Product (Fvp) Fv = H_KL v using autograd.\n",
    "    Includes damping: (F + damping*I)v = Fv + damping*v\n",
    "\n",
    "    Parameters:\n",
    "    - actor (PolicyNetwork): The policy network (must output Categorical distribution).\n",
    "    - states (torch.Tensor): Batch of states used to compute the KL divergence.\n",
    "    - vector (torch.Tensor): The vector 'v' to multiply the FIM by.\n",
    "    - cg_damping (float): Damping factor added to the diagonal of FIM.\n",
    "\n",
    "    Returns:\n",
    "    - torch.Tensor: The result of the Fisher-Vector Product (F + damping*I)v.\n",
    "    \"\"\"\n",
    "    actor.zero_grad() # Ensure gradients are fresh\n",
    "    \n",
    "    # Get the policy distribution for the given states (fixed old policy for KL calculation)\n",
    "    with torch.no_grad():\n",
    "        old_policy_dist = actor(states) \n",
    "        \n",
    "    # Get the policy distribution again (this one will be used for gradients)\n",
    "    new_policy_dist = actor(states)\n",
    "    \n",
    "    # Calculate the mean KL divergence KL(old || new)\n",
    "    mean_kl = calculate_kl_divergence(old_policy_dist, new_policy_dist)\n",
    "    \n",
    "    # Calculate the gradient of the KL divergence w.r.t. network parameters\n",
    "    # gradients = d(KL) / d(theta)\n",
    "    gradients = torch.autograd.grad(mean_kl, actor.parameters(), create_graph=True)\n",
    "    flat_gradients = torch.cat([grad.view(-1) for grad in gradients])\n",
    "    \n",
    "    # Calculate the dot product of the gradients and the input vector 'v'\n",
    "    # gv = (d(KL)/d(theta))^T * v\n",
    "    gv = torch.dot(flat_gradients, vector)\n",
    "    \n",
    "    # Calculate the gradient of the dot product w.r.t. network parameters\n",
    "    # This gives the FVP: Fv = d/d(theta) [ (d(KL)/d(theta))^T * v ]\n",
    "    fvp = torch.autograd.grad(gv, actor.parameters())\n",
    "    flat_fvp = torch.cat([grad.contiguous().view(-1) for grad in fvp]) # Flatten the result\n",
    "    \n",
    "    # Add damping: Fv + damping * v\n",
    "    damped_fvp = flat_fvp + cg_damping * vector\n",
    "    \n",
    "    return damped_fvp"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### Implementing the Conjugate Gradient Algorithm\n",
    "\n",
    "Solves the linear system $Ax = b$ iteratively, where $A$ is the FIM (implicitly via FVP), $x$ is the desired step direction $s$, and $b$ is the policy gradient $g$."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 9,
   "metadata": {},
   "outputs": [],
   "source": [
    "def conjugate_gradient(fvp_func: Callable[[torch.Tensor], torch.Tensor], \n",
    "                       b: torch.Tensor, \n",
    "                       cg_iters: int, \n",
    "                       residual_tol: float = 1e-10) -> torch.Tensor:\n",
    "    \"\"\"\n",
    "    Solves the linear system Ax = b using the Conjugate Gradient method.\n",
    "    Here, A is implicitly defined by the Fisher-Vector Product function 'fvp_func'.\n",
    "\n",
    "    Parameters:\n",
    "    - fvp_func (Callable): A function that computes the Fisher-Vector Product Ax (e.g., Fv).\n",
    "    - b (torch.Tensor): The right-hand side vector (e.g., the policy gradient g).\n",
    "    - cg_iters (int): Maximum number of CG iterations.\n",
    "    - residual_tol (float): Tolerance for stopping based on residual norm.\n",
    "\n",
    "    Returns:\n",
    "    - torch.Tensor: The approximate solution x to Ax = b.\n",
    "    \"\"\"\n",
    "    x = torch.zeros_like(b) # Initial guess for the solution\n",
    "    r = b.clone()           # Initial residual (r = b - Ax, with x=0)\n",
    "    p = b.clone()           # Initial search direction\n",
    "    rdotr = torch.dot(r, r) # Squared norm of the residual\n",
    "\n",
    "    for i in range(cg_iters):\n",
    "        Ap = fvp_func(p) # Compute the Fisher-Vector Product (Action of A on p)\n",
    "        alpha = rdotr / (torch.dot(p, Ap) + 1e-8) # Calculate step size (add epsilon for stability)\n",
    "        \n",
    "        x += alpha * p    # Update the solution\n",
    "        r -= alpha * Ap   # Update the residual\n",
    "        \n",
    "        new_rdotr = torch.dot(r, r) # Calculate the new squared residual norm\n",
    "        \n",
    "        # Check for convergence\n",
    "        if torch.sqrt(new_rdotr) < residual_tol:\n",
    "            break\n",
    "            \n",
    "        # Calculate beta for updating the search direction\n",
    "        beta = new_rdotr / (rdotr + 1e-8) # Add epsilon for stability\n",
    "        p = r + beta * p  # Update the search direction\n",
    "        rdotr = new_rdotr # Store the new squared residual norm\n",
    "\n",
    "    return x"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### Implementing the Backtracking Line Search\n",
    "\n",
    "Finds an appropriate step size along the direction computed by CG that satisfies the KL constraint and improves the surrogate objective."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 10,
   "metadata": {},
   "outputs": [],
   "source": [
    "def backtracking_line_search(actor: PolicyNetwork,\n",
    "                             states: torch.Tensor,\n",
    "                             actions: torch.Tensor,\n",
    "                             advantages: torch.Tensor,\n",
    "                             old_log_probs: torch.Tensor,\n",
    "                             step_direction: torch.Tensor,\n",
    "                             initial_step_size: float,\n",
    "                             max_kl: float,\n",
    "                             line_search_decay: float,\n",
    "                             max_line_search_iters: int) -> Tuple[Optional[torch.Tensor], bool]:\n",
    "    \"\"\"\n",
    "    Performs backtracking line search to find a step size satisfying KL constraint\n",
    "    and ensuring non-negative surrogate advantage improvement.\n",
    "\n",
    "    Parameters:\n",
    "    - actor (PolicyNetwork): The policy network.\n",
    "    - states (torch.Tensor): Batch of states.\n",
    "    - actions (torch.Tensor): Batch of actions taken.\n",
    "    - advantages (torch.Tensor): Batch of calculated advantages.\n",
    "    - old_log_probs (torch.Tensor): Log probabilities of actions under the old policy.\n",
    "    - step_direction (torch.Tensor): The proposed update direction (e.g., from CG).\n",
    "    - initial_step_size (float): The initial step size to try (alpha).\n",
    "    - max_kl (float): The maximum allowed KL divergence (delta).\n",
    "    - line_search_decay (float): Factor to decay step size (beta < 1).\n",
    "    - max_line_search_iters (int): Maximum number of backtracking steps.\n",
    "\n",
    "    Returns:\n",
    "    - Tuple[Optional[torch.Tensor], bool]: \n",
    "        - The accepted update vector (step_size * step_direction), or None if no step found.\n",
    "        - Boolean indicating if a valid step was found.\n",
    "    \"\"\"\n",
    "    # Get current parameters as a vector\n",
    "    theta_old = parameters_to_vector(actor.parameters()).detach()\n",
    "\n",
    "    # --- Calculate expected improvement at step=0 (for checking improvement) ---\n",
    "    # grad_dot_step = g^T s (where s=step_direction)\n",
    "    # This requires the policy gradient 'g', which isn't directly passed.\n",
    "    # TRPO often uses the surrogate objective improvement check instead.\n",
    "    # L(theta_new) - L(theta_old) >= 0\n",
    "    # L(theta_old) = E[1 * A] = mean(Advantages) ?? No, it's 0 at theta=theta_old.\n",
    "    # So we need to check if L(theta_new) >= 0 approximately.\n",
    "\n",
    "    step_size = initial_step_size\n",
    "    \n",
    "    with torch.no_grad(): # No gradients needed for line search checks\n",
    "        # Get the policy distribution under the old parameters\n",
    "        old_policy_dist = actor(states)\n",
    "\n",
    "    for i in range(max_line_search_iters):\n",
    "        # Calculate the proposed new parameters\n",
    "        theta_new_vec = theta_old + step_size * step_direction\n",
    "        \n",
    "        # Temporarily update actor network parameters to evaluate the new policy\n",
    "        vector_to_parameters(theta_new_vec, actor.parameters())\n",
    "        \n",
    "        # --- Check KL divergence constraint --- \n",
    "        with torch.no_grad(): # No gradients needed for checking\n",
    "            new_policy_dist = actor(states)\n",
    "            kl_div = calculate_kl_divergence(old_policy_dist, new_policy_dist)\n",
    "\n",
    "        # --- Check Surrogate Objective Improvement --- \n",
    "        # L(theta) = E[ ratio * A ]\n",
    "        with torch.no_grad():\n",
    "            new_log_probs = new_policy_dist.log_prob(actions)\n",
    "            ratio = torch.exp(new_log_probs - old_log_probs) \n",
    "            surrogate_objective = torch.mean(ratio * advantages)\n",
    "\n",
    "        # Restore original parameters (will be updated later if step accepted)\n",
    "        vector_to_parameters(theta_old, actor.parameters())\n",
    "\n",
    "        # --- Check if constraints are satisfied --- \n",
    "        if kl_div <= max_kl and surrogate_objective >= 0: # Check for non-negative improvement\n",
    "            print(f\"  Line search: Found step size {step_size:.2e} after {i+1} iterations. KL={kl_div:.2e}, Obj={surrogate_objective:.2e}\")\n",
    "            return step_size * step_direction, True # Return the accepted update delta\n",
    "        else:\n",
    "            # print(f\"    LS iter {i}: size={step_size:.2e}, KL={kl_div:.2e} (max={max_kl:.2e}), Obj={surrogate_objective:.2e}\") # Debug\n",
    "            pass\n",
    "\n",
    "        # Decay the step size if constraints not met\n",
    "        step_size *= line_search_decay\n",
    "\n",
    "    print(f\"  Line search failed after {max_line_search_iters} iterations.\")\n",
    "    return None, False # No suitable step found"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### The TRPO Update Step\n",
    "\n",
    "This function orchestrates the calculation of the policy gradient, the CG solve, and the line search to update the actor network."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 11,
   "metadata": {},
   "outputs": [],
   "source": [
    "def update_policy_trpo(actor: PolicyNetwork,\n",
    "                       states: torch.Tensor,\n",
    "                       actions: torch.Tensor,\n",
    "                       advantages: torch.Tensor,\n",
    "                       old_log_probs: torch.Tensor,\n",
    "                       max_kl: float,\n",
    "                       cg_iters: int,\n",
    "                       cg_damping: float,\n",
    "                       line_search_decay: float,\n",
    "                       max_line_search_iters: int) -> Dict:\n",
    "    \"\"\"\n",
    "    Performs a TRPO update for the policy network (actor).\n",
    "\n",
    "    Returns:\n",
    "    - Dict: Dictionary containing update statistics (e.g., final KL, objective).\n",
    "    \"\"\"\n",
    "    # --- 1. Calculate Policy Gradient (g) --- \n",
    "    policy_dist = actor(states)\n",
    "    log_probs = policy_dist.log_prob(actions)\n",
    "    ratio = torch.exp(log_probs - old_log_probs) # pi_theta(a|s) / pi_theta_old(a|s)\n",
    "    \n",
    "    # Surrogate objective L = E[ratio * A]\n",
    "    # We need the gradient g = dL/dtheta | theta_old. This simplifies because ratio=1 at theta_old.\n",
    "    # g = E[ d/dtheta(log pi(a|s)) * A ] | theta_old\n",
    "    # Note: PyTorch needs a scalar for backward(). We compute loss = -mean(log_prob * A_detached)\n",
    "    # to get the negative gradient, then negate it.\n",
    "    actor.zero_grad()\n",
    "    policy_loss = -(policy_dist.log_prob(actions) * advantages.detach()).mean()\n",
    "    policy_loss.backward()\n",
    "    policy_gradient = parameters_to_vector([p.grad for p in actor.parameters()]).detach()\n",
    "    actor.zero_grad() # Clear gradients after calculation\n",
    "    # Policy gradient 'g' is -policy_gradient because optimizer minimizes loss\n",
    "    g = -policy_gradient \n",
    "\n",
    "    if torch.isnan(g).any():\n",
    "        print(\"Warning: Policy gradient contains NaNs. Skipping update.\")\n",
    "        return {'status': 'grad_nan', 'kl': -1, 'objective': -1}\n",
    "\n",
    "    # --- 2. Define FVP function --- \n",
    "    # Need a closure for CG that captures actor, states, damping\n",
    "    def fvp(vector):\n",
    "        return fisher_vector_product(actor, states, vector, cg_damping)\n",
    "\n",
    "    # --- 3. Solve Fs = g using Conjugate Gradient --- \n",
    "    step_direction = conjugate_gradient(fvp, g, cg_iters)\n",
    "    \n",
    "    if torch.isnan(step_direction).any():\n",
    "        print(\"Warning: Step direction contains NaNs (CG failed). Skipping update.\")\n",
    "        return {'status': 'cg_nan', 'kl': -1, 'objective': -1}\n",
    "\n",
    "    # --- 4. Calculate initial step size alpha = sqrt(2*delta / s^T F s) --- \n",
    "    s_dot_Fs = torch.dot(step_direction, fvp(step_direction)) # s^T F s = s^T (F s)\n",
    "    if s_dot_Fs < 0: # Should theoretically be positive definite, but damping helps\n",
    "        print(f\"Warning: s_dot_Fs = {s_dot_Fs:.2e} is negative. Using s_dot_Fs = 0.\")\n",
    "        s_dot_Fs = torch.tensor(0.0, device=device)\n",
    "        # Handle this case: maybe skip update or use a default small step?\n",
    "        # For now, we'll let initial_step_size become large/inf, line search should handle it.\n",
    "        \n",
    "    initial_step_size = torch.sqrt(2 * max_kl / (s_dot_Fs + 1e-8)) # Add epsilon for stability\n",
    "\n",
    "    # --- 5. Perform Backtracking Line Search --- \n",
    "    final_update_vec, success = backtracking_line_search(\n",
    "        actor, states, actions, advantages, old_log_probs,\n",
    "        step_direction, initial_step_size, max_kl, \n",
    "        line_search_decay, max_line_search_iters\n",
    "    )\n",
    "\n",
    "    # --- 6. Update Policy Network Parameters --- \n",
    "    final_kl = -1\n",
    "    final_obj = -1\n",
    "    if success and final_update_vec is not None:\n",
    "        theta_old = parameters_to_vector(actor.parameters()).detach()\n",
    "        theta_new_vec = theta_old + final_update_vec\n",
    "        vector_to_parameters(theta_new_vec, actor.parameters()) # Apply the update\n",
    "        # Optionally calculate final KL and objective for logging\n",
    "        with torch.no_grad():\n",
    "          old_dist = actor(states) # Need to recompute old dist with potentially updated params before LS\n",
    "          old_dist = Categorical(logits=old_dist.logits.detach()) # Detach old logits\n",
    "          new_dist = actor(states)\n",
    "          final_kl = calculate_kl_divergence(old_dist, new_dist).item()\n",
    "          new_log_probs_final = new_dist.log_prob(actions)\n",
    "          ratio_final = torch.exp(new_log_probs_final - old_log_probs)\n",
    "          final_obj = torch.mean(ratio_final * advantages).item()\n",
    "        status = 'success'\n",
    "    else:\n",
    "        status = 'line_search_failed'\n",
    "        \n",
    "    return {'status': status, 'kl': final_kl, 'objective': final_obj}"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### Value Function Optimization Step\n",
    "\n",
    "Updates the critic network using MSE loss."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 12,
   "metadata": {},
   "outputs": [],
   "source": [
    "def update_value_function(critic: ValueNetwork,\n",
    "                          critic_optimizer: optim.Optimizer,\n",
    "                          states: torch.Tensor,\n",
    "                          returns_to_go: torch.Tensor,\n",
    "                          num_epochs: int) -> float:\n",
    "    \"\"\"\n",
    "    Updates the value function (critic) network.\n",
    "\n",
    "    Parameters:\n",
    "    - critic (ValueNetwork): The value network.\n",
    "    - critic_optimizer (optim.Optimizer): Optimizer for the value network.\n",
    "    - states (torch.Tensor): Batch of states.\n",
    "    - returns_to_go (torch.Tensor): Batch of target values (e.g., empirical returns).\n",
    "    - num_epochs (int): Number of update epochs over the batch.\n",
    "\n",
    "    Returns:\n",
    "    - float: The average loss over the update epochs.\n",
    "    \"\"\"\n",
    "    total_loss = 0.0\n",
    "    for _ in range(num_epochs):\n",
    "        # Predict values for the states\n",
    "        predicted_values = critic(states).squeeze() # Ensure shape matches target\n",
    "        \n",
    "        # Calculate MSE loss\n",
    "        loss = F.mse_loss(predicted_values, returns_to_go)\n",
    "        \n",
    "        # Optimize the critic\n",
    "        critic_optimizer.zero_grad()\n",
    "        loss.backward()\n",
    "        critic_optimizer.step()\n",
    "        total_loss += loss.item()\n",
    "        \n",
    "    return total_loss / num_epochs"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "# Running the TRPO Algorithm\n",
    "\n",
    "Set up hyperparameters, initialize networks and optimizers, and run the TRPO training loop.\n",
    "\n",
    "### Hyperparameter Setup\n",
    "\n",
    "TRPO requires careful tuning of its specific parameters."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 13,
   "metadata": {},
   "outputs": [],
   "source": [
    "# Hyperparameters for TRPO on Custom Grid World\n",
    "GAMMA_TRPO = 0.99           # Discount factor\n",
    "GAE_LAMBDA = 0.97           # GAE lambda parameter\n",
    "MAX_KL = 0.01               # KL divergence constraint (delta)\n",
    "CG_ITERS = 10               # Max iterations for Conjugate Gradient\n",
    "CG_DAMPING = 0.1            # Damping factor for FVP\n",
    "LINE_SEARCH_DECAY = 0.8     # Step size decay factor for line search (beta)\n",
    "MAX_LINE_SEARCH_ITERS = 10  # Max iterations for line search\n",
    "CRITIC_LR = 1e-3            # Learning rate for the value network (critic)\n",
    "CRITIC_EPOCHS = 10          # Number of epochs to train critic per policy update\n",
    "STANDARDIZE_ADV = True      # Whether to standardize advantages\n",
    "\n",
    "NUM_ITERATIONS_TRPO = 150   # Number of TRPO iterations (policy updates)\n",
    "STEPS_PER_ITERATION = 1000  # Number of environment steps to collect per iteration\n",
    "MAX_STEPS_PER_EPISODE_TRPO = 200 # Max steps per episode within an iteration"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### Initialization\n",
    "\n",
    "Initialize actor, critic, and the critic's optimizer."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 14,
   "metadata": {},
   "outputs": [],
   "source": [
    "# Re-instantiate the environment\n",
    "custom_env: GridEnvironment = GridEnvironment(rows=10, cols=10)\n",
    "n_actions_custom: int = custom_env.get_action_space_size()\n",
    "n_observations_custom: int = custom_env.get_state_dimension()\n",
    "\n",
    "# Initialize Actor (Policy Network) and Critic (Value Network)\n",
    "actor: PolicyNetwork = PolicyNetwork(n_observations_custom, n_actions_custom).to(device)\n",
    "critic: ValueNetwork = ValueNetwork(n_observations_custom).to(device)\n",
    "\n",
    "# Initialize Optimizer only for the Critic\n",
    "critic_optimizer: optim.Adam = optim.Adam(critic.parameters(), lr=CRITIC_LR)\n",
    "\n",
    "# Lists for plotting\n",
    "iteration_rewards = []\n",
    "iteration_avg_ep_lens = []\n",
    "iteration_critic_losses = []\n",
    "iteration_kl_divs = []\n",
    "iteration_surr_objs = []"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### Training Loop\n",
    "\n",
    "The TRPO loop involves collecting a batch of data, computing advantages, updating the policy via CG+line search, and updating the value function."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {},
   "outputs": [],
   "source": [
    "print(\"Starting TRPO Training on Custom Grid World...\")\n",
    "\n",
    "# --- TRPO Training Loop ---\n",
    "for iteration in range(NUM_ITERATIONS_TRPO):\n",
    "    # --- 1. Collect Trajectories (Rollout Phase) --- \n",
    "    batch_states: List[torch.Tensor] = []\n",
    "    batch_actions: List[int] = []\n",
    "    batch_log_probs_old: List[torch.Tensor] = []\n",
    "    batch_rewards: List[float] = []\n",
    "    batch_next_states: List[torch.Tensor] = []\n",
    "    batch_dones: List[float] = [] # Use float for masking later\n",
    "    \n",
    "    episode_rewards_in_iter: List[float] = []\n",
    "    episode_lengths_in_iter: List[int] = []\n",
    "    steps_collected = 0\n",
    "\n",
    "    while steps_collected < STEPS_PER_ITERATION:\n",
    "        state = custom_env.reset()\n",
    "        episode_reward = 0.0\n",
    "        \n",
    "        for t in range(MAX_STEPS_PER_EPISODE_TRPO):\n",
    "            state_tensor = state # Already a tensor from env\n",
    "            \n",
    "            # Sample action from current policy\n",
    "            with torch.no_grad(): # No gradients needed during rollout\n",
    "                policy_dist = actor(state_tensor)\n",
    "                action_tensor = policy_dist.sample()\n",
    "                action = action_tensor.item()\n",
    "                log_prob_old = policy_dist.log_prob(action_tensor)\n",
    "            \n",
    "            # Store data\n",
    "            batch_states.append(state_tensor)\n",
    "            batch_actions.append(action)\n",
    "            batch_log_probs_old.append(log_prob_old)\n",
    "\n",
    "            # Interact with environment\n",
    "            next_state, reward, done = custom_env.step(action)\n",
    "            \n",
    "            batch_rewards.append(reward)\n",
    "            batch_next_states.append(next_state)\n",
    "            batch_dones.append(float(done)) # Store done as float (0.0 or 1.0)\n",
    "            \n",
    "            state = next_state\n",
    "            episode_reward += reward\n",
    "            steps_collected += 1\n",
    "            \n",
    "            if done or steps_collected >= STEPS_PER_ITERATION:\n",
    "                episode_rewards_in_iter.append(episode_reward)\n",
    "                episode_lengths_in_iter.append(t + 1)\n",
    "                break\n",
    "                \n",
    "    # --- End Rollout Phase ---\n",
    "\n",
    "    # Convert lists to tensors\n",
    "    states_tensor = torch.stack(batch_states).to(device)\n",
    "    actions_tensor = torch.tensor(batch_actions, dtype=torch.long, device=device)\n",
    "    log_probs_old_tensor = torch.stack(batch_log_probs_old).to(device)\n",
    "    rewards_tensor = torch.tensor(batch_rewards, dtype=torch.float32, device=device)\n",
    "    next_states_tensor = torch.stack(batch_next_states).to(device)\n",
    "    dones_tensor = torch.tensor(batch_dones, dtype=torch.float32, device=device)\n",
    "\n",
    "    # --- 2. Estimate Values & Advantages --- \n",
    "    with torch.no_grad():\n",
    "        values_tensor = critic(states_tensor).squeeze()\n",
    "        next_values_tensor = critic(next_states_tensor).squeeze()\n",
    "        \n",
    "    advantages_tensor = compute_gae(\n",
    "        rewards_tensor, values_tensor, next_values_tensor, dones_tensor, \n",
    "        GAMMA_TRPO, GAE_LAMBDA, standardize=STANDARDIZE_ADV\n",
    "    )\n",
    "    \n",
    "    # Calculate returns-to-go for critic update (Target = A_gae + V_old)\n",
    "    returns_to_go_tensor = advantages_tensor + values_tensor.detach()\n",
    "\n",
    "    # --- 3. Update Policy (Actor) using TRPO --- \n",
    "    update_stats = update_policy_trpo(\n",
    "        actor, states_tensor, actions_tensor, advantages_tensor, log_probs_old_tensor.detach(),\n",
    "        MAX_KL, CG_ITERS, CG_DAMPING, LINE_SEARCH_DECAY, MAX_LINE_SEARCH_ITERS\n",
    "    )\n",
    "\n",
    "    # --- 4. Update Value Function (Critic) --- \n",
    "    critic_loss = update_value_function(\n",
    "        critic, critic_optimizer, states_tensor, returns_to_go_tensor.detach(), CRITIC_EPOCHS\n",
    "    )\n",
    "\n",
    "    # --- Logging and Stats --- \n",
    "    avg_reward_iter = np.mean(episode_rewards_in_iter) if episode_rewards_in_iter else np.nan\n",
    "    avg_len_iter = np.mean(episode_lengths_in_iter) if episode_lengths_in_iter else np.nan\n",
    "    \n",
    "    iteration_rewards.append(avg_reward_iter)\n",
    "    iteration_avg_ep_lens.append(avg_len_iter)\n",
    "    iteration_critic_losses.append(critic_loss)\n",
    "    iteration_kl_divs.append(update_stats['kl'])\n",
    "    iteration_surr_objs.append(update_stats['objective'])\n",
    "    \n",
    "    # Print progress\n",
    "    if (iteration + 1) % 10 == 0:\n",
    "        print(f\"Iter {iteration+1}/{NUM_ITERATIONS_TRPO} | Steps: {steps_collected} | Avg Reward: {avg_reward_iter:.2f} | Avg Len: {avg_len_iter:.1f} | KL: {update_stats['kl']:.2e} | Critic Loss: {critic_loss:.4f} | Status: {update_stats['status']}\")\n",
    "\n",
    "print(\"Custom Grid World Training Finished (TRPO).\")"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "# Visualizing the Learning Process\n",
    "\n",
    "Plot the results for the TRPO agent. We plot average reward per iteration."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 16,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "iVBORw0KGgoAAAANSUhEUgAAB8YAAAGGCAYAAAAJj+sGAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjkuNCwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy8ekN5oAAAACXBIWXMAAA9hAAAPYQGoP6dpAAEAAElEQVR4nOzdBXyT1/oH8F+SugttaYHiLsMZPrYBGzBX5r7/5G67c/d7dzfGxuzO5U6ZM2PADNiA4e4Ohbq7JPl/nvPmDWmatGmb0jb9fT+fNGn0zcmb5OQ853mOwWq1WkFEREREREREREREREREROSjjM29AURERERERERERERERERERE2JgXEiIiIiIiIiIiIiIiIiIvJpDIwTEREREREREREREREREZFPY2CciIiIiIiIiIiIiIiIiIh8GgPjRERERERERERERERERETk0xgYJyIiIiIiIiIiIiIiIiIin8bAOBERERERERERERERERER+TQGxomIiIiIiIiIiIiIiIiIyKcxME5ERERERERERERERERERD6NgXEiajEef/xxGAwGj64r15PrU+Pb0lsOHDigHvODDz44ro/b2l111VXo0qVLc2+GzzrppJPUgYiI2gb2J72H/cnmJW0gbbFmzZrm3pQ2pTn2eyIiIl/s49ZnO2RcTMbHiFrL/k2tGwPj1OQfVJ4cFi9ebB8E0Q9GoxExMTE4/fTTsWLFCrcdAv0QEhKCfv364eGHH0ZBQUGN62/duhWXXXYZOnTogMDAQCQlJeHSSy9V59eH3PcTTzyBE044AWFhYQgODsaAAQNw33334ejRo2gKy5cvV883Ly8PLVFGRgbuv/9+DBw4ULVJUFAQevTogauvvhp//fUXWrL//ve/av8ZNWpUsw96uTv8/fffaKuc2yIiIgITJ07ETz/91Nyb1ibJD5UZM2bY/y8pKVGfTfIZ3py2bdumtkO+R4jI97A/6R3sTzYd9idbNnn+t956K1ry/uOrEwFkgFvezy3t+baUPiwRtW3s43oH+7hNY+/evbjxxhvRrVs3tc0yHjd27Fi89NJLKC0tbdGvlfPYFbmmf648//zzLW58bf78+Qx+U5Pya9q7p7buo48+qvb/hx9+iF9++aXG+X379rV/qc6cORPTpk2D2WzGrl271A/nSZMmYfXq1aoT4ez1119XHYuioiIsWrQI//rX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y1PXOeuss2rdrjPPPFNdr6CgwO11hgwZYo2MjPT4uXbu3Nl65ZVX1jh/4sSJ6qCTbevfv3+t9zVr1iy1ffIcHW3YsEGdf91111U7/+6771bn//7779W2R85bvny5/byFCxeq84KDg60HDx60ny/tKOf/8ccftW5XdHS0dfDgwTXOl3aU10Q/FBUV1XjdZs6cWeN2+mXOz+/mm2+udr1LLrlEnS/XdyTnObZtbdasWaOu/8svv6j/LRaLtWPHjtbbb7+9Rvv88MMP1W47bdo0a7du3ez/z549W11v3rx59vNKS0utffr08agd33//fXU9VwfZn53fI/J6paSk2M9fuXKlOv+f//yn27Z88cUX1f/yergzZ84cdZ2PP/7Yfl5FRYV19OjR1rCwMPv7Q56nXO+5556zX6+qqso6fvx4db48H90pp5xiHThwoLWsrMx+nrT1mDFjrD179rTWRe7v2muvVdudkZGhXrfTTjtNnS/vC91HH31kNRqN6jPD0RtvvKGuu2zZMvX/6tWr1f/z589X/2/atEn9f8EFF1hHjRpV7TNB3vM62X6z2VztvuX1kNfnySeftJ8nr7Xcn+wfJSUl1a4v75XExET1uaRbtGiRur68P+uiv4e//vpr+3n5+fnqPh239amnnrKGhoZad+3aVe32999/v9VkMlkPHTpk3365v4iICNW2npBtmD59uv1/eV1cvRfr89rr+/+4cePUfuTIuQ3FihUr1PU//PBD+3ny/eDuveb8mevpfq63T2xsrDUnJ8d+3e+++87l5wIRHT/sT7I/yf5kTexPuif3J58b7shnhFznk08+qXb+ggULapyvvweWLl1qP0/6UdLGd911l/28f/zjH1aDwWBdv369/bzs7GxrTExMjfehvHdd7XP6a3rqqaeq56uT10j6dI59Slfks0NuL9uik/uRvlxAQID9dWzI85fLPCHbIP1SR+6erzf6sLIPlZeXVzsvNzdXfZ5fc801HvVh3X2G1Oczsq79g4jIFfZx2cdt7j6ujDF5sk8436+Mx23dutXlZY7b4e61crVPPProo+q633zzTY3rOvaLPBm7cubpvvHtt9+q/2Us0R3p90ufxHk8qy716ZN7Y3yttm1wHF91N75WWFhojYqKsl5//fXVzpfPInnvO56v90GlD+fM1TjfM888o/rNju+z2j4Pnfers88+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YDDAYrFg2bJluPvuu3HFFVc09+a16sB4OUupExERkY+QMupS2VJI+fRzzz0XRqNRJfdIgJy8tcZ43aXU9eA5A+M16euu11ZKnRnjRERE3lfvb9Xs7Gy88847qKiowAMPPKCC5JI9/uCDD3KtHl/OGDcYgTEfAqetAgK5ljwREREdf//+97/Rp08fdOrUCUVFRejXrx8mTJig+qIPP/xwc29eq6QPslVWWZt7U4iIiIi8okePHpg3bx4OHz6MhQsXYsqUKer8jIwMRERENPfmtXoh9jXGzZ6vMc5S6u7XGGcpdSIiouOq3t+q0dHROPPMM/HCCy9g7dq1an3xXr16YdasWVxjvAUGxrt5s5Q6ERERUTMKCAjA22+/jX379uHHH3/Exx9/jB07duCjjz6CycTBtobw19cYN9c9sElERETUGjz66KOqolCXLl3U+uKjR49W50tCz5AhQ5p783xojfG6M8b1oG8IM8bdB8ZryxhnKXUiIqLmL6UuGeNLlizB4sWL1WHbtm1qvcczzjgDEydO9P4WUr1Vmi04lFOiTneNY2CciIiIfMOTTz6pBjklY1wOutLSUjVJUwZBqX70QTauMU5ERES+4vzzz1dLP6ampuKEE06wn3/KKafgnHPOadZt8wWhDmuMW61WtcSRO2V6KXVmjLsvpe5JxjgnARMREXlNvaebxcfH46abbsLRo0dx/fXXY/369cjKysI333yD22+/3XtbRg2WkluKKotVzTxMCA9q7s0hIiIi8oonnnhClVB3tY6kXEb1F6BnjDMwTkRERD6kffv2Kjtc1hYvKChQpdVl3XFZloe8kzEuY496RnOdpdSZMd64wDgzxomIiJovY1xKp/fv3997W0Bel5pXqo47RAfDaHQ/a5OIiIioNXGXkbJx40bExMQ0yza1dvogW12DmkREREStxYUXXogJEybg1ltvVZWFhg8fjgMHDqi+5Ny5c3Heeec19ya2ao5l0WWd8UA/90FvySp3LBtOx+htIsFvs8UKk4sxXAbGiYiIvK/e36oSFK+qqsKvv/6KN998E4WFhep8ySB3lcFDx19eaaU6jgkJaO5NISIiImq06OhoFfiWoHivXr3Uaf0QGRmJyZMnqwFQakRgnBnjRERE5COWLl2K8ePHq9PffvutCojn5eXh5ZdfxtNPP93cm9fq+ZmM9j5kSS3ZzqJM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XWlr9apo4ZEuC6QJ9apot069VKQnuBvqJHdV75UY57yvpybdH7PWyE6Mjw3pk/De+jk0TnT+bHOLSs1+dByuEmIb7ufrKw35OxpsiI09YmOP2NgjNuEdn5hafLZalxiPHj1a0tPTzXo52tpF19mBfxUUO38G8dbCPgAAACFITyhqe0ldh/G5557zSIrreozwjtjoSGnWKNbc3pntpXXGk8sriHKCuxUkAAAIP1qpPWXKFHnzzTfN8j2jRo0yFeAjRowwj19xxRWmottyzjnnyIsvvijTpk2TDRs2mCotndCp260EuS5JOXfuXNm4caP88MMP8ve//908pp2QgklslPNcZFGpMxFesYjHehzVS4p31q7lFpR4TCzQcTkAAPCuWleM64nIL7/8Ut577z1TqaMVO+eff75ceuml0rcv1R/+QMU4AAAIB9o+3V1OTo4Zk77yyiuyePFiJmx6UVpynOw9UCS7cgqkq6R4p2JcZa+p/74AAAAa0IUXXii7d++W++67T3bs2CHHHnusOTeakZFhHt+0aZNHhfi9995rlqLU661bt0paWppJio8fP971nC1btpgk+N69e83jJ598svz444/mdjCJKy/SKSw+mBjXqngrUc6yjzWTXF55n1tYnhgnfgAABE5iPDo6Ws4++2xzsdZ4nDp1qpx22mnSpk0b0/YHflpjnIpxAAAQBubNmyevvvqqfPTRR9KqVSuzzM/zzz/v78MKKekp8fL7jhzZ5bWK8U7OayrGAQBAENK26Xat0+fMmVPp3On9999vLna0mjwUWBXhhW4V49oG3OoYTxFP7SrG84pKpbTMcbBinIp7AAD8nxh3p9XigwcPlr/++kv+/PNP004IDa+gfFZmPINNAAAQorQ654033jAJ8ezsbNO5qLCwUD799FPp2rWrvw8v5GQkO9c51Ipxr7AqxnPWiZSVikQybgUAAAh2cTFRlSrGraSuohV4zTSKOzg21qpxWqkDAOA7dfp21UpxbWU5ZMgQad26tTz11FNmLZzffvvN+0eIQ6JiHAAAhDJtPdm5c2dZtmyZGXdu27ZNnn32WX8fVkhLT7ES416qGG/UViQyTqSsSOTARu/sEwAAAAG3xjiJ8drTynorVpoYd63RTvwAAPB/xfhFF10k06dPN9XiWqkzbtw4OfHEE71/ZKgxa1Ym684AAIBQ9MUXX8jN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",
      "text/plain": [
       "<Figure size 2000x400 with 3 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "image/png": "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",
      "text/plain": [
       "<Figure size 1500x300 with 2 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "# Plotting results for TRPO on Custom Grid World\n",
    "plt.figure(figsize=(20, 4))\n",
    "\n",
    "# Average Rewards per Iteration\n",
    "plt.subplot(1, 3, 1)\n",
    "valid_rewards = [r for r in iteration_rewards if not np.isnan(r)]\n",
    "valid_indices = [i for i, r in enumerate(iteration_rewards) if not np.isnan(r)]\n",
    "plt.plot(valid_indices, valid_rewards)\n",
    "plt.title('TRPO Custom Grid: Avg Episode Reward per Iteration')\n",
    "plt.xlabel('Iteration')\n",
    "plt.ylabel('Average Reward')\n",
    "plt.grid(True)\n",
    "# Add moving average if enough data\n",
    "if len(valid_rewards) >= 10:\n",
    "    rewards_ma_trpo = np.convolve(valid_rewards, np.ones(10)/10, mode='valid')\n",
    "    plt.plot(valid_indices[9:], rewards_ma_trpo, label='10-iteration MA', color='orange')\n",
    "    plt.legend()\n",
    "\n",
    "# Average Episode Length per Iteration\n",
    "plt.subplot(1, 3, 2)\n",
    "valid_lens = [l for l in iteration_avg_ep_lens if not np.isnan(l)]\n",
    "valid_indices_len = [i for i, l in enumerate(iteration_avg_ep_lens) if not np.isnan(l)]\n",
    "plt.plot(valid_indices_len, valid_lens)\n",
    "plt.title('TRPO Custom Grid: Avg Episode Length per Iteration')\n",
    "plt.xlabel('Iteration')\n",
    "plt.ylabel('Average Steps')\n",
    "plt.grid(True)\n",
    "if len(valid_lens) >= 10:\n",
    "    lens_ma_trpo = np.convolve(valid_lens, np.ones(10)/10, mode='valid')\n",
    "    plt.plot(valid_indices_len[9:], lens_ma_trpo, label='10-iteration MA', color='orange')\n",
    "    plt.legend()\n",
    "\n",
    "# Critic Loss per Iteration\n",
    "plt.subplot(1, 3, 3)\n",
    "plt.plot(iteration_critic_losses)\n",
    "plt.title('TRPO Custom Grid: Critic Loss per Iteration')\n",
    "plt.xlabel('Iteration')\n",
    "plt.ylabel('MSE Loss')\n",
    "plt.grid(True)\n",
    "if len(iteration_critic_losses) >= 10:\n",
    "    loss_ma_trpo = np.convolve(iteration_critic_losses, np.ones(10)/10, mode='valid')\n",
    "    plt.plot(np.arange(len(loss_ma_trpo)) + 9, loss_ma_trpo, label='10-iteration MA', color='orange')\n",
    "    plt.legend()\n",
    "\n",
    "plt.tight_layout()\n",
    "plt.show()\n",
    "\n",
    "# Plot KL Divergence and Surrogate Objective (Optional - Check for stability)\n",
    "plt.figure(figsize=(15, 3))\n",
    "plt.subplot(1, 2, 1)\n",
    "plt.plot(iteration_kl_divs)\n",
    "plt.hlines(MAX_KL, 0, len(iteration_kl_divs), linestyles='dashed', colors='r', label=f'Max KL ({MAX_KL})')\n",
    "plt.title('TRPO Actual KL Divergence per Iteration')\n",
    "plt.xlabel('Iteration')\n",
    "plt.ylabel('Mean KL')\n",
    "plt.legend()\n",
    "plt.grid(True)\n",
    "\n",
    "plt.subplot(1, 2, 2)\n",
    "plt.plot(iteration_surr_objs)\n",
    "plt.hlines(0, 0, len(iteration_surr_objs), linestyles='dashed', colors='r', label='Zero Improvement')\n",
    "plt.title('TRPO Surrogate Objective after Step')\n",
    "plt.xlabel('Iteration')\n",
    "plt.ylabel('Mean Surrogate Objective')\n",
    "plt.legend()\n",
    "plt.grid(True)\n",
    "\n",
    "plt.tight_layout()\n",
    "plt.show()"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "**Analysis of TRPO Learning Curves (Custom Grid World):**\n",
    "\n",
    "The learning curves provide insights into the TRPO agent's performance and behavior during training on the custom Grid World environment.\n",
    "\n",
    "1.  **Average Reward Curve:**\n",
    "    *   **Observation:** This plot shows a clear and positive learning trend. The average reward per episode starts low and increases rapidly within the first ~40 iterations, quickly reaching a plateau near the maximum possible reward range for this environment (around 8-9, considering the +10 for the goal and small step penalties). The 10-iteration moving average smooths out the inherent noise and confirms this strong upward trend and stabilization at a high reward level.\n",
    "    *   **Interpretation:** This indicates successful learning. The agent effectively learned a policy to navigate to the goal state, maximizing its cumulative reward. The relatively smooth increase without significant drops showcases TRPO's characteristic stability, avoiding catastrophic policy collapses often seen in simpler policy gradient methods. The quick convergence suggests the algorithm efficiently found a good policy for this relatively simple task.\n",
    "\n",
    "2.  **Average Episode Length Curve:**\n",
    "    *   **Observation:** Complementing the reward curve, the average episode length starts high (near the maximum allowed steps) and decreases dramatically over the initial 30-40 iterations. It converges to a very low average length (around 18 steps), which corresponds to the optimal path length (9 steps right, 9 steps down) in a 10x10 grid. It remains stable at this low level afterward.\n",
    "    *   **Interpretation:** This confirms that the agent is not only reaching the goal but is doing so efficiently. It quickly learned to avoid unnecessary steps and potential wall collisions, finding near-optimal paths. This rapid decrease in episode length aligns with the rapid increase in reward.\n",
    "\n",
    "3.  **Critic Loss Curve:**\n",
    "    *   **Observation:** The Mean Squared Error (MSE) loss for the critic network shows a desirable trend. It starts higher and decreases substantially during the early iterations, eventually fluctuating at a relatively low value. The moving average highlights the overall reduction in loss.\n",
    "    *   **Interpretation:** This signifies that the value network (Critic) is effectively learning to approximate the state-value function (specifically, the target returns-to-go derived from GAE). Accurate value estimates are crucial for calculating low-variance advantage estimates, which in turn guide the policy updates. The stabilization of the loss indicates the critic has converged to a reasonable approximation for the learned policy's value function.\n",
    "\n",
    "4.  **Actual KL Divergence Plot:**\n",
    "    *   **Observation:** This plot appears problematic and likely indicates an issue with logging or frequent update failures. The majority of the logged KL divergence values are negative (around -1.0). KL divergence, by definition, must be non-negative. The expected behavior is for the KL divergence to be positive but stay below the `MAX_KL` threshold (0.01, shown by the red dashed line). The few spikes near zero might represent the iterations where the line search *succeeded* and a valid, non-negative KL was calculated and logged.\n",
    "    *   **Interpretation:** The predominantly negative values strongly suggest that the `final_kl` variable is being logged with its default failure value (-1) for most iterations. This implies that the `backtracking_line_search` function frequently fails to find a step size that satisfies *both* the KL constraint (`kl_div <= max_kl`) and the surrogate objective improvement (`surrogate_objective >= 0`). While the KL constraint itself might technically be met by a negative (incorrectly calculated or logged) value, the lack of surrogate improvement likely causes the failure. Despite this, the agent *is* learning, meaning *some* updates must be succeeding. The plot fails to accurately represent the KL constraint satisfaction process across all iterations.\n",
    "\n",
    "5.  **Surrogate Objective Plot:**\n",
    "    *   **Observation:** Similar to the KL plot, this plot mostly shows values around -1.0, with occasional positive spikes. The red dashed line at zero represents the theoretical baseline for acceptable improvement according to the surrogate objective.\n",
    "    *   **Interpretation:** This reinforces the interpretation of the KL plot. The logged `final_obj` likely defaults to -1 when the line search fails. The positive spikes represent successful updates where the chosen step resulted in a non-negative (or positive) change in the surrogate objective, satisfying that part of the line search condition. The high frequency of logged -1 values suggests many update steps were proposed by the Conjugate Gradient but rejected by the line search, potentially indicating inefficiency (many iterations without a policy change) or overly conservative line search parameters/checks.\n",
    "\n",
    "**Overall Conclusion:**\n",
    "\n",
    "The TRPO agent successfully learned an efficient policy for the custom Grid World, as evidenced by the excellent reward and episode length curves and the converging critic loss. However, the diagnostic plots for KL divergence and surrogate objective indicate potential issues in the implementation's handling or logging of the line search results. While TRPO's core mechanism aims for stability by enforcing these constraints, the plots suggest that the line search failed frequently or the logging mechanism only captured values for successful steps, potentially masking the true behavior of the constraint satisfaction during failed attempts. Despite these apparent logging/update issues, the algorithm's inherent stability mechanism likely prevented catastrophic updates, allowing eventual convergence to a good policy."
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "# Analyzing the Learned Policy (Optional Visualization)\n",
    "\n",
    "Visualize the policy learned by the TRPO actor network on the grid."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 17,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "\n",
      "Plotting Learned Policy from TRPO:\n"
     ]
    },
    {
     "data": {
      "image/png": "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",
      "text/plain": [
       "<Figure size 600x600 with 1 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "def plot_trpo_policy_grid(policy_net: PolicyNetwork, env: GridEnvironment, device: torch.device) -> None:\n",
    "    \"\"\"\n",
    "    Plots the greedy policy derived from the TRPO policy network.\n",
    "    Shows the most likely action for each state.\n",
    "    (Identical to the REINFORCE plotting function, just renamed for context)\n",
    "    \"\"\"\n",
    "    rows: int = env.rows\n",
    "    cols: int = env.cols\n",
    "    policy_grid: np.ndarray = np.empty((rows, cols), dtype=str)\n",
    "    action_symbols: Dict[int, str] = {0: '↑', 1: '↓', 2: '←', 3: '→'}\n",
    "\n",
    "    fig, ax = plt.subplots(figsize=(cols * 0.6, rows * 0.6))\n",
    "\n",
    "    for r in range(rows):\n",
    "        for c in range(cols):\n",
    "            state_tuple: Tuple[int, int] = (r, c)\n",
    "            if state_tuple == env.goal_state:\n",
    "                policy_grid[r, c] = 'G'\n",
    "                ax.text(c, r, 'G', ha='center', va='center', color='green', fontsize=12, weight='bold')\n",
    "            else:\n",
    "                state_tensor: torch.Tensor = env._get_state_tensor(state_tuple)\n",
    "                with torch.no_grad():\n",
    "                    # Policy network now returns a distribution object\n",
    "                    action_dist: Categorical = policy_net(state_tensor)\n",
    "                    # Select the action with the highest probability (greedy action)\n",
    "                    best_action: int = action_dist.probs.argmax(dim=1).item()\n",
    "\n",
    "                policy_grid[r, c] = action_symbols[best_action]\n",
    "                ax.text(c, r, policy_grid[r, c], ha='center', va='center', color='black', fontsize=12)\n",
    "\n",
    "    ax.matshow(np.zeros((rows, cols)), cmap='Greys', alpha=0.1)\n",
    "    ax.set_xticks(np.arange(-.5, cols, 1), minor=True)\n",
    "    ax.set_yticks(np.arange(-.5, rows, 1), minor=True)\n",
    "    ax.grid(which='minor', color='black', linestyle='-', linewidth=1)\n",
    "    ax.set_xticks([])\n",
    "    ax.set_yticks([])\n",
    "    ax.set_title(\"TRPO Learned Policy (Most Likely Action)\")\n",
    "    plt.show()\n",
    "\n",
    "# Plot the policy learned by the trained TRPO actor\n",
    "print(\"\\nPlotting Learned Policy from TRPO:\")\n",
    "plot_trpo_policy_grid(actor, custom_env, device)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## Common Challenges and Solutions in TRPO\n",
    "\n",
    "**Challenge: Implementation Complexity**\n",
    "*   **Problem:** Calculating FVPs, implementing CG, and performing the line search correctly can be difficult and error-prone.\n",
    "*   **Solutions**:\n",
    "    *   **Use Existing Libraries:** Reliable implementations exist in libraries like Stable-Baselines3 or Tianshou (though this violates the 'basic libraries' constraint of this exercise).\n",
    "    *   **Proximal Policy Optimization (PPO):** PPO was developed as a simpler alternative that often achieves comparable performance without the strict second-order calculations and complex line search of TRPO.\n",
    "\n",
    "**Challenge: Computational Cost**\n",
    "*   **Problem:** CG requires multiple FVP calculations per policy update, and each FVP involves backpropagation. The line search adds further computation.\n",
    "   **Solutions**:\n",
    "    *   **Tune CG Iterations:** Reduce the number of CG iterations (trade-off between accuracy of step direction and speed).\n",
    "    *   **Parallel Rollouts:** Use multiple workers to collect trajectories in parallel to amortize the update cost (standard practice in large-scale RL).\n",
    "    *   **Consider PPO:** PPO updates are typically faster.\n",
    "\n",
    "**Challenge: Tuning Hyperparameters**\n",
    "*   **Problem:** TRPO introduces several sensitive hyperparameters ($\\delta$, $\\lambda$, damping, line search params).\n",
    "   **Solutions**:\n",
    "    *   **Use Common Defaults:** Start with values known to work well for similar problems (e.g., $\\delta=0.01$, $\\lambda=0.97$, `cg_damping=0.1`).\n",
    "    *   **Systematic Tuning:** Employ hyperparameter optimization techniques if necessary, although this is computationally expensive.\n",
    "\n",
    "**Challenge: On-Policy Sample Inefficiency**\n",
    "*   **Problem:** Like REINFORCE, TRPO is on-policy and discards data after each update.\n",
    "   **Solutions**:\n",
    "    *   **Increase Batch Size:** Collect more data per iteration (`STEPS_PER_ITERATION`) to get more stable gradients and make each update count more.\n",
    "    *   **Off-Policy Methods:** Consider off-policy actor-critic methods (e.g., DDPG, SAC, TD3) if sample efficiency is paramount, though they come with their own challenges.\n",
    "\n",
    "## Conclusion\n",
    "\n",
    "Trust Region Policy Optimization (TRPO) represents a significant theoretical advance in policy gradient methods, introducing the idea of constraining policy updates using KL divergence to ensure more stable and reliable learning. By leveraging second-order information (approximated via the FIM and Conjugate Gradient) and careful step selection (via line search), TRPO aims for monotonic policy improvement.\n",
    "\n",
    "While its practical implementation is more involved than simpler methods like REINFORCE or even DQN, and it has largely been succeeded in popularity by the simpler PPO algorithm, understanding TRPO provides valuable insights into the challenges of policy optimization and the principles behind modern actor-critic algorithms. It highlights the importance of controlling policy changes for stable learning in complex reinforcement learning tasks."
   ]
  }
 ],
 "metadata": {
  "kernelspec": {
   "display_name": ".venv-all-rl-algos",
   "language": "python",
   "name": "python3"
  },
  "language_info": {
   "codemirror_mode": {
    "name": "ipython",
    "version": 3
   },
   "file_extension": ".py",
   "mimetype": "text/x-python",
   "name": "python",
   "nbconvert_exporter": "python",
   "pygments_lexer": "ipython3",
   "version": "3.9.0"
  }
 },
 "nbformat": 4,
 "nbformat_minor": 2
}
